#pragma once

#include<iostream>
#include<string>
#include<unistd.h>
#include"Util.hpp"
#include"Log.hpp"

using namespace std;

bool GetParameter(string& parameter) {

    string method = getenv("METHOD");

    if (method == "GET") {
        parameter = getenv("PARAMETER");
    }
    else if (method == "POST") {

        int content_length = atoi(getenv("CONTENT_LENGTH"));
        char c;

        while (content_length--) {
            int size = read(0, &c, 1);
            if (size > 0) {
                parameter.push_back(c);
            }
            else if (size < 0){

                LOG(WARNING, "CGI read error!");
                return false;
            }
        }
    }
    return true;
}

